home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 23 / CU Amiga - Super CD-ROM 23 (June 1998).iso / CreatingGames / Utilities / C / ASAP / interrupt.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-09-09  |  2.3 KB  |  68 lines

  1. /*****************************************************************************
  2.  *                                                                           *
  3.  * ASAP - Amiga Software Authoring Platform                                  *
  4.  *                                                                           *
  5.  * Written by Laurie Perrin                                                  *
  6.  *                                                                           *
  7.  * AInterrupt wrapper class                                                  *
  8.  *                                                                           *
  9.  *****************************************************************************/
  10.  
  11. #ifndef ASAP_AInterrupt_H
  12. #define ASAP_AInterrupt_H
  13.  
  14. extern "C"
  15. {
  16.  #include <EXEC/Interrupts.h>
  17.  #include <Proto/EXEC.h>
  18. }
  19.  
  20. class AInterrupt : public Interrupt
  21. {
  22.  public:
  23.  inline void AddMemHandler();
  24.  inline void Cause();
  25.  inline static void Disable();
  26.  inline static void Enable();
  27.  inline void RemMemHandler();
  28.  inline AInterrupt * SetIntVector(long intNumber);
  29.  inline static AInterrupt * SetIntVector(long intNumber, Interrupt * interrupt);
  30. };
  31. //----------------------------------------------------------------------------
  32. void AInterrupt::AddMemHandler ()
  33. {
  34.  ::AddMemHandler(this);
  35. }
  36. //----------------------------------------------------------------------------
  37. void AInterrupt::Cause ()
  38. {
  39.  ::Cause(this);
  40. }
  41. //----------------------------------------------------------------------------
  42. void AInterrupt::Disable ()
  43. {
  44.  ::Disable();
  45. }
  46. //----------------------------------------------------------------------------
  47. void AInterrupt::Enable ()
  48. {
  49.  ::Enable();
  50. }
  51. //----------------------------------------------------------------------------
  52. void AInterrupt::RemMemHandler ()
  53. {
  54.  ::RemMemHandler(this);
  55. }
  56. //----------------------------------------------------------------------------
  57. AInterrupt * AInterrupt::SetIntVector (long intNumber)
  58. {
  59.  return (AInterrupt *) ::SetIntVector(intNumber, this);
  60. }
  61. //----------------------------------------------------------------------------
  62. AInterrupt * AInterrupt::SetIntVector (long intNumber, Interrupt * interrupt)
  63. {
  64.  return (AInterrupt *) ::SetIntVector(intNumber, interrupt);
  65. }
  66.  
  67. #endif
  68.